The p4 ftp directory This directory contains the distribution of p4. The most current version is the file p4-1.2.tar.Z. The latex source, info file, and an ascii version of the User's Guide is included. The postscript for the User's Guide is available separately in the file p4.manual.ps.Z. The current version of p4 is version 1.2. To find out your version of p4, run any p4 program with the -p4version command-line argument. p4 p4 is a library of macros and subroutines developed at Argonne National Laboratory for programming a variety of parallel machines in C and Fortran. Its predecessor was the m4-based "Argonne macros" system described in the Holt, Rinehart, and Winston book "Portable Programs for Parallel Processors, by Lusk, Overbeek, et al., from which p4 takes its name. The current p4 system maintains the same basic computational models described there (monitors for the shared-memory model, message-passing for the distributed-memory model, and support for combining the two models) while significantly increasing ease and flexibility of use. The current release is version 1.2. Features include: + library of useful monitors for shared-memory programming + portable monitor-building primitives + send/receive for shared-memory, distributed memory, and clusters + support for heterogeneous computing + Emacs info version of the manual for on-line help + Shared-memory programming even on uniprocessor workstations + instrumentation for automatic logging/tracing + Either automatic or user-controlled buffer-pool management + Remote startup; no daemons necessary + optional secure server for faster startup on networks + optional automatic logging of events for upshot tracing + asynchronous communication of large messages + global operations (broadcast, global sum, max, etc.) + both master-slave and SPMD models for message-passing programs + an improved and simplified Fortran interface p4 is intended to be portable, simple to install and use, and efficient. It can be used to program networks of workstations, advanced parallel supercomputers like the Intel Touchstone Delta and the thinking Machines CM-5, and single shared-memory multiprocessors like the Kendall Square. It has currently been installed on the following list of machines: Sequent Symmetry, Encore Multimax, Alliant FX/8, FX/800, and FX/2800, Cray X/MP, Sun, NeXT, DEC, Silicon Graphics, and IBM RS6000 workstations, Stardent Titan, BBN GP-1000 and TC-2000, Intel IPSC/860, Intel Touchstone Delta, Kendall Square, CM-5, and Alliant Campus. It will soon be ported to the Intel Paragon and a number of new parallel machines under development. It is not difficult to port to new systems. A useful companion system is the upshot logging and X-based trace examination facility. The macros to create logs are included in p4. Upshot (an X program for graphically displaying the logs) is available separately, as upshot.tar.Z in this directory. You can obtain the complete distribution of p4 by anonymous ftp from info.mcs.anl.gov. Take the file p4-1.2.tar.Z from the directory pub/p4. The distribution contains all source code, installation instructions, a User's Guide in both ascii text and latexinfo format, and a collection of examples in both C and Fortran. A copy of the postscript for the manual is available separately as p4.manual.ps.Z To ask questions about p4, report bugs, contribute examples, etc., send mail to p4@mcs.anl.gov. Rusty Lusk lusk@mcs.anl.gov